package neu.competition.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * 比赛数据传输对象
 */
@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("matches")
public class Matches {

    /**
     * 比赛ID，主键，自动增长
     */
    @TableId(value = "matchid", type = IdType.AUTO)
    private Integer matchid;

    /**
     * 比赛关联的竞赛ID，不能为空
     */

    private Integer comid;
    private String matchname;
    /**
     * 比赛开始日期，不能为空，且必须是当前或未来的日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date startdate;

    /**
     * 比赛结束日期，不能为空，且必须是未来的日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date enddate;

    /**
     * 比赛决赛日期，不能为空，且必须是未来的日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date finaldate;

    /**
     * 决赛地点，不能为空
     */
//    TODO 测试不可为空
    private String finallocation;

    /**
     * 报名截止日期，不能为空，且必须是未来的日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date joindeadline;

    /**
     * 赞助商联系方式
     */
    private String sponsorcontact;

    /**
     * 课程负责人
     */
    private String courseleader;

    /**
     * 评分导师
     */
    private String gradeinstructor;
    private String enterprisejudges;
    //比赛标识
    private String poster;

    /**
     * 评分标准
     */
    private String scoringcriteria;

    private String awardintroduction;

    /**
     * 经理ID
     */
    private String managerid;
    private int statecompetition;
}
